package rkdwogus7.basic;

public class J02_Arithmathic {

	public static void main(String[] args) {
		double number = ( 1 / 3 ) * 3;
		System.out.println( number );
		// 책 73페이지. 형변환. 그 중에서도 자료형 변환
		// 정수를 정수로 나누면 자동적으로 결과는 정수로 나오게 된다.
		// 1/3 하면 결과값은 정수인 0으로 나온다. 0 * 3 해도 0이지. 이게 자동 타입변환이고...
		// 74쪽에 보면 자동 변환에 대한 이야기가 나와.
		// 제대로 계산하려면
		//실수 리터럴. 강제 타입 변환. 명시적으로 표현을 해 줘야 하는거지
		// 산수식 쓸 때 주의해서 넣어야 하는거야. 산수식에서 더블이나 플롯은 가급적 쓰지 말라고 해. 그 이유는 약간의 오차가 있기 때문이지.
		// 1. 실수 리터럴은 69쪽처럼 하면 돼. 정수 뒤에 점을 찍으면 정수로 인식. 또는 뒤에 접미사를 붙이면 돼.
		System.out.println( (1. / 3) * 3 );
		System.out.println( (1F / 3) * 3 );
		System.out.println( ( (float)1 / 3) * 3 );	// 자료형 변환 (명시적)
		System.out.println( (1 / 3) * 3 );	// 큰 녀석을 작은 녀석으로 변환시키면 데이터 변형이나 손실의
		                                    // 우려가 있으므로 주의하도록 해.
		int quotient = 7 /3;
		System.out.println( quotient );
		int remainder = 7 % 3;
		System.out.println( remainder );
		int result = 11; result /= 2;
		System.out.println( result );
	}

}
